Configuration VPN WireGuard entre deux routeurs MikroTik
Informations des sites
Routeur A
- LAN : 10.10.10.0/24\
- Passerelle : 10.10.10.1\
- Bridge LAN : bridge\
- Nom de domaine : lepag.ch
Routeur B
- LAN : 10.10.20.0/24\
- Passerelle : 10.10.20.1\
- Bridge LAN : bridge\
- Nom de domaine : servernas.perrin-transport.ch
Tunnel WireGuard
- IP côté A : 192.168.32.1/32\
- IP côté B : 192.168.32.2/32\
- Port : 51812
Configuration Routeur A
1. Interface WireGuard
/interface wireguard add name=wg-siteA listen-port=51812
2. Clé privée
Prendre la clé privée du routeur B
3. Adresse du tunnel
/ip address add address=192.168.32.1/32 interface=wg-siteA
4. Peer vers Routeur B
/interface wireguard peers add interface=wg-siteA public-key="PUBKEY_B" endpoint="servernas.perrin-transport.ch:51812" allowed-address=192.168.32.2/32,10.10.20.0/24 persistent-keepalive=25
Endpoint pas obligatoire ici si il est défini dans le Routeur B
5. Route vers LAN B
/ip route add dst-address=10.10.20.0/24 gateway=wg-siteA /ip route add dst-address=192.168.32.0/24 gateway=wg-siteA
6. Firewall
/ip firewall filter add chain=input action=accept protocol=udp dst-port=51812 in-interface=ether1[internet] comment="Allow WireGuard" add chain=forward action=accept in-interface=wg-siteA out-interface=bridge comment="WG -> LAN A" add chain=forward action=accept in-interface=bridge out-interface=wg-siteA comment="LAN A -> WG"
Les deux dernières règles peuvent ne pas être nécessaires
Configuration Routeur B
1. Interface WireGuard
/interface wireguard add name=wg-siteB listen-port=51812
2. Clé privée
/interface wireguard set [find name=wg-siteB] private-key="PRIVKEY_B"
3. Adresse du tunnel
/ip address add address=192.168.32.2/32 interface=wg-siteB
4. Peer vers Routeur A
/interface wireguard peers add interface=wg-siteB public-key="PUBKEY_A" endpoint="lepag.ch:51812" allowed-address=192.168.32.1/32,10.10.10.0/24 persistent-keepalive=25
5. Route vers LAN A
/ip route add dst-address=10.10.10.0/24 gateway=wg-siteB /ip route add dst-address=192.168.32.0/24 gateway=wg-siteB
6. Firewall
/ip firewall filter add chain=input action=accept protocol=udp dst-port=51812 in-interface=ether1[Internet] comment="Allow WireGuard" add chain=forward action=accept in-interface=wg-siteB out-interface=BRIDGE_LAN_B comment="WG -> LAN B" add chain=forward action=accept in-interface=BRIDGE_LAN_B out-interface=wg-siteB comment="LAN B -> WG"
Tests
Depuis Routeur A
ping 192.168.32.2 ping 10.10.20.1
Tester également les serveurs ou ordinateur interne ping 10.10.10.102 Si problème, ajouter une règle au Firewall interne de l'ordi ou du serveur.
New-NetFirewallRule -DisplayName "Allow LAN Site B to Site A" `
-Direction Inbound -Action Allow -RemoteAddress 10.10.20.0/24
Depuis Routeur B
ping 192.168.32.1 ping 10.10.10.1
Si même problème :
New-NetFirewallRule -DisplayName "Allow LAN Site A to Site B" `
-Direction Inbound -Action Allow -RemoteAddress 10.10.10.0/24
Tutoriel
Bon tutoriel
https://www.youtube.com/watch?v=P6f8Qc4EItc
Tuto avec un client window
https://www.youtube.com/watch?v=WoLzhQVuRU0
Info mikroTik
https://help.mikrotik.com/docs/spaces/ROS/pages/69664792/WireGuard